package sv.gob.mh.dgii.model;

// Generated Dec 12, 2007 1:25:05 PM by Hibernate Tools 3.2.0.CR1

import java.util.Date;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * EdReglasValidacion generated by hbm2java
 */
@Entity
@Table(name = "ED_REGLAS_VALIDACION", schema = "EDADEPUDOC")
public class EdReglasValidacion implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -6807061506723258004L;
	private EdReglasValidacionId id;
	private TbFormulariosVersiones tbFormulariosVersiones;
	private String cusuario;
	private String snombreRegla;
	private String ctipo;
	private Integer bstatus;
	private Integer bctlCalidad;
	private String xreglaValida;
	private String xexpInconsist;
	private String smensajeError;
	private String snotas;
	private Date fhingreso;
	private Date fhactualizacion;
	private Double nmargenError;
	private Integer bcriterio;

	public EdReglasValidacion() {
	}

	public EdReglasValidacion(EdReglasValidacionId id,
			TbFormulariosVersiones tbFormulariosVersiones, String cusuario,
			Integer bstatus, Integer bctlCalidad, Date fhingreso) {
		this.id = id;
		this.tbFormulariosVersiones = tbFormulariosVersiones;
		this.cusuario = cusuario;
		this.bstatus = bstatus;
		this.bctlCalidad = bctlCalidad;
		this.fhingreso = fhingreso;
	}

	public EdReglasValidacion(EdReglasValidacionId id,
			TbFormulariosVersiones tbFormulariosVersiones, String cusuario,
			String snombreRegla, String ctipo, Integer bstatus,
			Integer bctlCalidad, String xreglaValida, String xexpInconsist,
			String smensajeError, String snotas, Date fhingreso,
			Date fhactualizacion, Double nmargenError, Integer bcriterio) {
		this.id = id;
		this.tbFormulariosVersiones = tbFormulariosVersiones;
		this.cusuario = cusuario;
		this.snombreRegla = snombreRegla;
		this.ctipo = ctipo;
		this.bstatus = bstatus;
		this.bctlCalidad = bctlCalidad;
		this.xreglaValida = xreglaValida;
		this.xexpInconsist = xexpInconsist;
		this.smensajeError = smensajeError;
		this.snotas = snotas;
		this.fhingreso = fhingreso;
		this.fhactualizacion = fhactualizacion;
		this.nmargenError = nmargenError;
		this.bcriterio = bcriterio;
	}

	@EmbeddedId
	@AttributeOverrides( {
			@AttributeOverride(name = "cformulario", column = @Column(name = "C_FORMULARIO", nullable = false, precision = 4, scale = 0)),
			@AttributeOverride(name = "cversion", column = @Column(name = "C_VERSION", nullable = false, precision = 4, scale = 0)),
			@AttributeOverride(name = "cregla", column = @Column(name = "C_REGLA", nullable = false, length = 25)) })
	public EdReglasValidacionId getId() {
		return this.id;
	}

	public void setId(EdReglasValidacionId id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumns( {
			@JoinColumn(name = "C_FORMULARIO", referencedColumnName = "C_FORMULARIO", nullable = false, insertable = false, updatable = false),
			@JoinColumn(name = "C_VERSION", referencedColumnName = "C_VERSION", nullable = false, insertable = false, updatable = false) })
	public TbFormulariosVersiones getTbFormulariosVersiones() {
		return this.tbFormulariosVersiones;
	}

	public void setTbFormulariosVersiones(
			TbFormulariosVersiones tbFormulariosVersiones) {
		this.tbFormulariosVersiones = tbFormulariosVersiones;
	}

	@Column(name = "C_USUARIO", nullable = false, length = 30)
	public String getCusuario() {
		return this.cusuario;
	}

	public void setCusuario(String cusuario) {
		this.cusuario = cusuario;
	}

	@Column(name = "S_NOMBRE_REGLA", length = 255)
	public String getSnombreRegla() {
		return this.snombreRegla;
	}

	public void setSnombreRegla(String snombreRegla) {
		this.snombreRegla = snombreRegla;
	}

	@Column(name = "C_TIPO", length = 1)
	public String getCtipo() {
		return this.ctipo;
	}

	public void setCtipo(String ctipo) {
		this.ctipo = ctipo;
	}

	@Column(name = "B_STATUS", nullable = false, precision = 1, scale = 0)
	public Integer getBstatus() {
		return this.bstatus;
	}

	public void setBstatus(Integer bstatus) {
		this.bstatus = bstatus;
	}

	@Column(name = "B_CTL_CALIDAD", nullable = false, precision = 1, scale = 0)
	public Integer getBctlCalidad() {
		return this.bctlCalidad;
	}

	public void setBctlCalidad(Integer bctlCalidad) {
		this.bctlCalidad = bctlCalidad;
	}

	@Column(name = "X_REGLA_VALIDA", length = 4000)
	public String getXreglaValida() {
		return this.xreglaValida;
	}

	public void setXreglaValida(String xreglaValida) {
		this.xreglaValida = xreglaValida;
	}

	@Column(name = "X_EXP_INCONSIST", length = 4000)
	public String getXexpInconsist() {
		return this.xexpInconsist;
	}

	public void setXexpInconsist(String xexpInconsist) {
		this.xexpInconsist = xexpInconsist;
	}

	@Column(name = "S_MENSAJE_ERROR")
	public String getSmensajeError() {
		return this.smensajeError;
	}

	public void setSmensajeError(String smensajeError) {
		this.smensajeError = smensajeError;
	}

	@Column(name = "S_NOTAS")
	public String getSnotas() {
		return this.snotas;
	}

	public void setSnotas(String snotas) {
		this.snotas = snotas;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "FH_INGRESO", nullable = false, length = 7)
	public Date getFhingreso() {
		return this.fhingreso;
	}

	public void setFhingreso(Date fhingreso) {
		this.fhingreso = fhingreso;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "FH_ACTUALIZACION", length = 7)
	public Date getFhactualizacion() {
		return this.fhactualizacion;
	}

	public void setFhactualizacion(Date fhactualizacion) {
		this.fhactualizacion = fhactualizacion;
	}

	@Column(name = "N_MARGEN_ERROR", precision = 7)
	public Double getNmargenError() {
		return this.nmargenError;
	}

	public void setNmargenError(Double nmargenError) {
		this.nmargenError = nmargenError;
	}

	@Column(name = "B_CRITERIO", precision = 1, scale = 0)
	public Integer getBcriterio() {
		return this.bcriterio;
	}

	public void setBcriterio(Integer bcriterio) {
		this.bcriterio = bcriterio;
	}

}
